.wrapper {
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    width: 94%;
    min-height: 640px;
    margin: auto;
    position: relative;
}

.wrapper .origin {
    flex: 1 1 400px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-around;
}

.wrapper .extra {
    flex: 1 1 140px;
    width: 86%;
    margin-top: 40px;
    align-self: flex-end;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-around;
}

.wrapper .row {
    flex: 1 1 40px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    perspective: 1000px;
}

.wrapper .extra .row {
    justify-content: flex-start;
}

.wrapper .ele {
    flex: 1 1 60px;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, .4);
    border-radius: 6px;
    max-width: 120px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    margin: 2px;
    transition: all .5s;
    cursor: pointer;
    user-select: none;
}

.wrapper .ele a{
	text-decoration: none;
	color: #fff;
}

.wrapper .ele:hover {
    background: rgba(255, 255, 255, .8);
    box-shadow: 1px 1px 5px rgba(0, 0, 0, .4);
    border-radius: 1px;
    cursor: pointer;
}

.wrapper .ele:hover a{
	color: #000;
}

.wrapper .ele:empty {
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0);
}

.wrapper .controls {
    position: absolute;
    top: 0px;
    right: 0px;
}

.wrapper .controls .control {
    margin: 10px 0;
    text-align: right;
}

.wrapper .control button {
    border: none;
    outline: none;
    border-radius: 2px;
    height: 26px;
    font-size: 0.8em;
    cursor: pointer;
    transition: all .5s;
}

.wrapper .control:not(:first-child) button{
    background-color:rgba(0,0,0,.2);
}

.wrapper .controls button:hover {
    box-shadow: 0px 0px 4px rgba(0,0,0,.6);
}

.wrapper footer {
    -webkit-flex: 1 1;
    -ms-flex: 1 1;
    flex: 1 1;
    text-align: center;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column-reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
}

.the-root-element {
    background: #7CC97E;
}

.document-metadata {
    background: #6473D1;
}

.sections {
    background: #CF7B56;
}

.grouping-content {
    background: #8490D1;
}

.text-level-semantics {
    background: #4EB750;
}

.tabular-data {
    background: #CDCD57;
}

.forms {
    background: #CF7E4A;
}

.edits {
    background: #9F3ADA;
}

.scripting {
    background: #10F4ED;
}

.embedded-content {
    background: #D17ED3;
}

.web-components {
    background: #abab00;
}

.ele.unactive {
    opacity: .2;
}
